Power management in operating recording media

ABSTRACT

A method of managing power used by a recording medium is disclosed. The recording medium receives a maximum current value and limits its operation to consume up to the maximum current value during a given storage operation. The recording medium may comprise a storage module coupled to a controller. The controller in the recording medium may receive the maximum current value and limit the operation of the recording medium to the maximum current value.

FIELD OF THE DISCLOSURE

This disclosure relates to the management of power used by recordingmedia. In particular, the disclosure relates to the regulation of powerusage during operations performed by a recording medium.

GENERAL BACKGROUND

Recording media are required to continuously perform basic functionssuch as read and write. Examples of recording media include optical,magnetic (e.g. hard drives) and solid-state recording media (e.g. flashmemory, ROM, PROM).

Read and write operations, along with other even more complexoperations, may differ substantially in the electric power consumptionneeds placed on a recording medium. Customarily, the controller used tooperate a recording medium (sometimes referred to herein as a “recordingmedium controller”) does not accept or store information regarding thepower supply. Rather, in executing an operation, the controller blindlyuses all available power in order to make the operation more timeefficient and prompt. As such, the recording medium does not always drawa constant amount of current. Instead, the current drawn can vary from anear-zero value when the medium is inactive, to a maximum consumptionwhen active.

If the operation uses power unrestrainedly, an excess of power canproduce unwanted results such as unintentionally destroying datarecorded in the recording medium or destroying the circuitry in therecording medium. The excess of power supply resulting from suchuncontrolled power usage can also hinder the successful execution ofoperations on a recording medium.

SUMMARY

In one aspect, there is a method of managing power used by a recordingmedium by receiving a maximum current value in the recording medium andlimiting operation of the recording medium to the maximum current valueduring a storage operation (e.g. read, write). This can be achieved bylimiting the current drawn by the recording medium to a value no greaterthan the maximum current value. The recording medium also includes astorage module and a controller coupled to control the storage module.The storage module may be a non-volatile storage module. The recordingmedium may be a solid-state PROM memory device, a solid-state flashmemory device, a magnetic tape storage system, or a hard disk drive. Inyet another aspect, if the maximum current value received is zero, thecurrent consumption of the recording medium during operation is limitedto a default value.

In another aspect, the maximum current value is received by thecontroller from a processor in a computing device. The recording mediummay be operable to implement storage operations requested by aprocessor. The processor, in turn, may be coupled to provide commands tothe controller corresponding to the type of storage operation to beperformed by the recording medium. Upon setting the maximum currentvalue, the controller may transmit to the processor a signal indicativeof a status of the maximum current value. In another aspect, therecording medium has more than one storage module. The controller mayreceive a drive identifier which is used to identify each storagemodule.

In another aspect, the storage operation may be performed in a pluralityof memory blocks. The recording medium may consume at most the maximumcurrent value when performing the storage operation on the plurality ofmemory blocks. In yet another aspect, the storage operation is limitedin power usage by calculating a maximum number of memory blocks tooperate simultaneously. This number is determined by dividing themaximum current value into a current value used by one memory block.

In one aspect, there is a power management system for a recording mediumincluding a computing device coupled to the recording medium by acommunication bus. The computing device comprises a processor operableto transmit a maximum current value to the recording medium. Therecording medium comprises a controller coupled to receive the maximumcurrent value from the computing device, and to store data in a storagemodule. The controller limits the current consumption of the recordingmedium during a storage operation to a level no greater than the maximumcurrent value. The maximum current value may be stored in a register inthe controller.

In another aspect, there is a method of managing power consumption by arecording medium by receiving a maximum power value by a recordingmedium and controlling operation of the recording medium to limit powerconsumption by the recording medium to a value no greater than themaximum power value. The operation of the recording medium may entaillimiting power consumption during a plurality of storage operations(e.g. two erase operations). The maximum power value may be received bya controller coupled to control the operation of the recording medium.

In another aspect, the storage operation is an erase operation performedon a recording medium which includes a plurality of memory blocks. Thecontrolling operation of the recording medium entails limiting thenumber of the plurality of memory blocks erased during the eraseoperation.

In yet another aspect, the recording medium may receive a command toperform a storage operation (e.g. read, write, etc.) along with amaximum power value. The recording medium is then controlled as to limitpower consumption during the storage operation corresponding to thecommand.

In another aspect, a second command may be received by the recordingmedium to perform a second storage operation, wherein the second commandincludes a second maximum power value. The recording medium iscontrolled to limit power consumption by the recording medium to a valueno greater than the second maximum power value during the second storageoperation.

In one aspect, there is a method for limiting power consumption by arecording medium divided in memory blocks. A value corresponding to aquantity of current used by the recording medium when performing astorage operation for one block is defined. Then, a maximum currentlimit for operation of the recording medium is defined. Further, amaximum number of the plurality of memory blocks to operate upon duringa single storage operation is determined. Such determination is madebased on the value corresponding to the quantity of current used by therecording medium for one block, and the maximum current limit. Therecording medium is then limited to operate so that no more than themaximum number of the plurality of memory blocks is operated upon duringa single storage operation.

BRIEF DESCRIPTION OF THE DRAWINGS

By way of example, reference will now be made to the accompanyingdrawings.

FIG. 1A illustrates a computing system coupled to a recording medium.

FIG. 1B illustrates a computing system coupled to a hard disk drive.

FIG. 2 illustrates a tabular diagram of the content of a powermanagement message sent to a hard disk drive in one embodiment.

FIG. 3 illustrates a flow diagram for a method of setting a maximumamount of current used by a recording medium.

FIG. 4 illustrates a flow diagram for a method of performing anoperation that uses a previously set maximum amount of current.

DETAILED DESCRIPTION

The method and system described below provide an improved way to limitthe amount of power used by a recording medium when storing or otherwiseoperating on data. In one approach, a controller used to operate therecording medium receives a maximum current amount and then controlsoperation of the recording medium so that its power consumption does notexceed the specified amount of current. When performing any of a varietyof possible storage operations that may be implemented by the recordingmedium, the amount of power drawn by the recording medium from a powersource will be limited by the controller to the received maximum currentamount. A typical benefit is that damage to the recording medium suchas, for example, overheating is prevented.

A common storage operation is an erase operation. During an eraseoperation when erasing data from the recording medium, it is common thatmultiple areas or blocks may be erased simultaneously. The number ofblocks of data to erase may be sufficiently large enough that, if nolimit has been placed on the current amount to be used by the recordingmedium, the amount of current that the controller permits the recordingmedium to consume may exceed the amount of current that the recordingmedium can safely handle. As a result, an attempt to erase data from therecording medium for a large number of blocks may result in the physicaldestruction of the medium.

The method and system of this disclosure provide the ability to managepower consumption in relation to the amount of power needed by therecording medium depending on the operation performed. Further, theamount of power consumed may be changed during the operation of therecording medium. The consumption of power can be limited in order toprevent power oversupply, to save energy, etc. The disclosed powermanagement method and system can be applied to multiple types ofrecording media including optical, magnetic and solid-state recordingmedia.

FIG. 1A illustrates a system 100 for managing power in a recordingmedium 130 according to a first embodiment. The recording medium 130includes a controller 120 and a storage module 125. The controller 120may be a computer processor that operates the storage module 125 by, forexample, directing the reading and writing of data on the storage module125. The recording medium 130 draws electrical power from a power source135 as needed to perform its operations, but within a maximum currentlimit as controlled by controller 120. In one embodiment, the controller120 may store the maximum current limit in the storage module 125.Depending on the type of recording medium 130 used (e.g. hard drive,flash memory, magnetic tape), the hardware controller 120 used for thestorage module 125 will vary. For example, if the recording medium 130is a hard drive, the controller 120 may be a hard disk drive controllerand the storage module 125 may be a hard disk. If the recording medium130 is a flash memory, the controller 120 may be a flash memorycontroller and the storage module 125 may be one or more flash memorychips.

The recording medium 130 communicates with other devices such as acomputing device 140 through an interface 105. The interface 105 servesas a connection to pass data back and forth from the recording medium130 to the computing device 140. The interface 105 may be, for instance,a data bus or a communication bus. The computing device 140 may includea processor or CPU 110 and a memory 180 (e.g. RAM). The CPU 110 managesthe memory 180. The computing device 140 may receive user input throughan input/output device 150. The input/output device 150 may be, forexample, a keyboard, mouse, touchpad, joystick, touch-screen, voicerecognition system, etc. The input/output device 150 allows a user tointerface with the computing device 140. The user may be, for example,any person with privileges to perform storage operations on the storagemodule 125. The computing device 140 may be a personal computer, alaptop, a cellular phone, a personal data assistant, a media player, amedia recorder, a server, a digital video recorder, an embedded controlsystem in a media recorder, an embedded control system in a digitalvideo recorder, an embedded control system in any other electricaldevice, etc.

The CPU 110 may communicate with the controller 120 by receiving andtransmitting various commands in relation to the data to be stored inthe storage module 125. One such message may be a power managementmessage sent to the controller 120 and may include, in one approach, aset-current command, a drive identifier and the maximum current limit.

The maximum current limit may be determined in various ways. In someembodiments, the user may enter into the computing device 140 a specificcurrent value to be used as the limit by the storage module 125. Thecomputing device 140 receives the limit entered by the user through theinput/output device 150.

In another embodiment, the CPU 110 generates the amount of current basedon calculations made by a specific application running on the CPU 110that needs to or desirably prefers to limit the consumption of power byrecording medium 130. For example, a computer program running on the CPU110 may be configured to set a predefined maximum current limit amountevery time the recording medium 130 restarts. Once the maximum currentlimit is known, a power management message may be constructed by aprocess running on the CPU 110.

The power management message may also optionally include a set-currentcommand, which may be an instruction recognized by the controller 120.The power management message may further optionally include a driveidentifier. In some embodiments, where there is a plurality of storagemodules managed by the controller 120, the drive identifier allows thecontroller 120 to determine the storage module that will have imposed amaximum current limit. The storage modules may be logical or physicalmodules.

FIG. 1B illustrates a computing system 101 wherein the recording mediumis a hard disk drive 130. The computing system 101 includes thecomputing device 140 which may communicate with the hard disk drive 130.The computing system 101 and the disk drive 130 may send and receivecommands related to data storage using a communication bus 105. The harddisk drive 130 includes a hard disk controller 121 that operates thewrite and read commands on a hard disk 170.

After a power management message is constructed, it may then betransmitted to the hard disk controller 121. In one embodiment, the harddisk 170 may be a device with multiple magnetic platters for recordingdata. In another embodiment, the hard disk 170 may be a solid-statedevice that has a logical memory structure identical to that of arecording medium with multiple magnetic platters. The hard diskcontroller 121 parses the power management message and identifies thecomponents contained in the power management message such as theset-current command, the drive identifier and the amount of current.

FIG. 2 illustrates a tabular diagram 200 of the content of an exemplarypower management message sent to recording medium 130. As mentionedabove, the power management message may contain three components: aset-current command, a current amount, and a drive identifier. In oneembodiment, prior to sending the power management message to the harddrive controller 121, the message may be stored in memory 180.

After the message is sent, the message may temporarily be stored in, forexample, registers (not shown) included in hard disk 170 or elsewhere inmedium 130. Once the hard disk controller 121 executes the set-currentcommand, the portions of memory 180 used to store the message may befreed to store other data. A command field 210 contains the set-currentcommand. The drive identifier is stored in a drive field 220. Themaximum amount of current is stored in a feature field 230.

The amount of current may be stored as, for example, a number that willbe factored with a multiplier constant. The multiplier constant may bestored in the hard disk 170 and readily accessible to the hard diskcontroller 121. The controller 121 then uses the multiplier constant tocalculate the maximum amount of current permitted. For example, if thelimit on the amount of current used by the recording medium 130 is to betwo amps, and the multiplier constant is 20 milliamps, the value storedin the feature field 230 would be 100. Alternatively, the amount ofcurrent may be stored as the magnitude of the actual limit amount ofcurrent that the recording medium 130 can handle. For example, if thelimit on the amount of current used by the recording medium 130 were tobe two amps, the value stored in the feature field 230 would be two. Inaddition, as an option, if the value stored in the feature field 230 iszero, no current restriction will be imposed on the recording medium130.

FIG. 3 illustrates a flow diagram for a method 300 in one approach ofsetting a maximum amount of current for the recording medium 130. Aprocess 310 sets a value for the amount of current. The value may be setthrough user input or generated by a computer program running on thecomputing device 140. Next, during process 320, the drive identifier,the amount of current, and a command are transmitted to the recordingmedium 130. As mentioned above, these components may be transmitted, forexample, to a hard disk drive controller or a flash memory controller.

Subsequently, the amount of current may be checked during decision block330 to determine whether it is valid. Valid values for the amount ofcurrent are, for example, non-negative values and values that are notgreater than the maximum current that the power source 135 can provide.In decision block 330, if the amount of current is valid, the amount ofcurrent is set by the medium controller 120 during process block 350.Otherwise, the process ends without setting the amount of current to anyvalue. The medium controller 120 may set the amount of current bystoring the current amount for future operations. The medium controller120 may be coupled to a power source connected to the recording medium130. The medium controller 120 may control the amount of current flowingfrom the power source to the recording medium 130 every time a newoperation is received. Alternatively, the controller 120 may transmit asignal to the power source indicating the maximum amount of current thatthe power source must produce for any future operation.

As such, for all subsequent operations, the controller 120 will controlthe consumption of power by limiting the maximum amount of current used.If the subsequent operation is a power management message, however, theamount of current used will be updated, and therefore restricted, to thenew value transmitted in the last power management message. In otherembodiments, a subsequent storage operation, such as a write operation,may be performed after receiving a write message that includes a maximumcurrent limit. The controller 120 would then perform the write operationusing the maximum current limit received with the write message. In oneapproach, the controller 120 may continue using the maximum amount ofcurrent imposed during the write message.

In another embodiment, the consumption of power for subsequentoperations may be controlled by using the current in bursts. In otherwords, the usage and non-usage of current may be time-split such that onaverage the amount of current used is equal to the maximum current valuereceived by the controller 120. For example, the normal amount ofcurrent that the recording medium 130 receives may be 600 mA, and a usermay wish to limit the power consumption of the recording medium 130 to150 mA. The controller 120 could then draw the current amount of 600 mAfor one second, and draw a near-zero current amount for the next threeseconds. Effectively, during the cumulative four-second period, thecurrent amount used would be 600 mA, and on average, the amount ofcurrent used would be 150 mA per second. Thus, the maximum amount ofcurrent used on average could be said to be 150 mA. In one approach,this can be achieved by programming the controller 120 to draw currentin short bursts. In another approach, this can be achieved by utilizinga capacitor (not shown) to store received current bursts whilepermitting an even flow of a lower current out of the capacitor.

Once the controller 120 sets the maximum current value, it may thentransmit a message to the CPU 110 including a signal indicative of astatus of the maximum current value to be consumed by the recordingmedium 130.

FIG. 4 illustrates a flow diagram for a method 400 of performing anoperation to access multiple blocks of data in a recording medium thatis limiting its operation to a maximum amount of current, for example,as set by a command received with a maximum amount of current or as mayhave been previously set in a prior command. The requested operation maybe, for example, the erasure of data from a recording medium 130 whilelimiting operation to no greater than the maximum amount of current.During such an erasure operation, and especially if the erasureoperation is a secure erase, multiple blocks of data may be erasedsimultaneously. In other cases, the operation may be a readingoperation, which also may affect multiple blocks of data in therecording medium.

During transmission process block 410, a computing device 140 transmitsan operation message to the recording medium controller 120. In process420, the number of blocks to be simultaneously accessed is calculated bythe recording medium controller 120. The number of blocks to be accessedsimultaneously may be determined, for example, by dividing a previouslyset maximum amount of current into the amount of current used to performan operation on one block, which in turn may be pre-stored orpre-programmed. For instance, the manufacturer of controller 120 (or ofrecording medium 130) may pre-program the amount of current per blockused by recording medium 130 during an operation as just described aboveby hardwiring it into the recording medium controller 120.

In process block 430, once the number of blocks that can be erasedsimultaneously has been calculated, the controller 120 may direct theerasure of such number of blocks (or in other cases, an even fewernumber of blocks). In decision block 440, the controller 120 determineswhether there are more blocks to erase. If there are, in process block430 the controller 120 may erase a further number of blocks and do so ina way that continues to limit the number of blocks that are erasedsimultaneously based on the calculation in block 420. In this manner,the limit set for the amount of current to be consumed by recordingmedium 130 will not be exceeded when performing an erase command. Theforegoing method 400 also may apply to other storage operations that mayact on multiple blocks of data such as a write operation.

While the above description contains many specifics, these should not beconstrued as limitations on the scope of the disclosure, but rather asan exemplification of preferred embodiments thereof. For example,although the above discussion for the disclosed embodiments primarilydiscusses the limit of current to a maximum value, in other embodimentthe power usage of the recording medium could be limited to, forexample, a maximum value of power. The disclosure includes anycombination or subcombination of the elements from the different speciesand/or embodiments disclosed herein. One skilled in the art willrecognize that these features, and thus the scope of this disclosure,should be interpreted in light of the following claims and anyequivalents thereto.

1. A method of managing power used by a recording medium, comprising:receiving a maximum current value in the recording medium; and limitingoperation of the recording medium to the maximum current value during astorage operation.
 2. The method of claim 1 wherein the recording mediumcomprises a storage module and a controller coupled to control thestorage module, and wherein the receiving of the maximum current valueis handled by the controller.
 3. The method of claim 2 wherein themaximum current value is received from a processor in a computingdevice, wherein the recording medium is operable to implement storageoperations requested by the processor.
 4. The method of claim 3 whereinthe processor is coupled to provide commands to the controllercorresponding to the storage operation to be performed by the recordingmedium.
 5. The method of claim 3 further comprising transmitting to theprocessor in the computing device a signal indicative of a status of themaximum current value to be consumed by the recording medium.
 6. Themethod of claim 2 wherein the maximum current value is accompanied by aset-current command when received by the controller.
 7. The method ofclaim 2 wherein the recording medium further comprises a plurality ofstorage modules controlled by the controller, and wherein the controllerfurther receives a drive identifier which is used to identify a storagemodule of the plurality of storage modules and wherein storageoperations on the storage module are limited to a maximum current value.8. The method of claim 1 wherein the limiting of the storage operationcomprises limiting current drawing by the recording medium to a value nogreater than the maximum current value.
 9. The method of claim 1 whereinthe limiting of the storage operation comprises using for a short periodof time current drawn by the recording medium, and then limiting thecurrent drawn to a minimum for a longer period of time, such that theaverage amount of current used during a cumulative period of timecomprising the short period of time and the longer period of time is nogreater than the maximum current value.
 10. The method of claim 1wherein the storage operation is an erase or a write operation.
 11. Themethod of claim 1 wherein the recording medium is selected from a groupconsisting of: a solid-state PROM memory device, a solid-state flashmemory device, a magnetic tape storage system, and a hard disk drive.12. The method of claim 1 wherein if the maximum current value receivedis zero, current consumption of the recording medium during operation islimited to a default value.
 13. The method of claim 1 wherein thestorage operation is performed in a plurality of memory blocks, and therecording medium consumes at most the maximum current value whenperforming the storage operation on the plurality of memory blocks. 14.The method of claim 1 wherein: the storage operation is performed in aplurality of memory blocks, and the limiting of the storage operationcomprises calculating a maximum number of memory blocks to operate onsimultaneously by dividing the maximum current value into a currentvalue used by one memory block, and performing only on the maximumnumber of memory blocks.
 15. A power management system for a recordingmedium, comprising a computing device coupled to a recording medium by acommunication bus, wherein: the computing device comprises a processoroperable to transmit a maximum current value to the recording medium;the recording medium comprises a controller coupled to receive themaximum current value from the computing device, and coupled to controlthe storing of data in a storage module; and the controller limits thecurrent consumption of the recording medium during a storage operationto a level no greater than the maximum current value.
 16. The system ofclaim 15 wherein the controller comprises a register for storing themaximum current value.
 17. A method of managing power consumption by arecording medium, comprising: receiving a maximum power value by arecording medium; and controlling operation of the recording medium tolimit power consumption by the recording medium to a value no greaterthan the maximum power value.
 18. The method of claim 17 wherein thecontrolling of the operation comprises limiting power consumption duringa plurality of storage operations, wherein the plurality of storageoperations includes at least two erase operations.
 19. The method ofclaim 17 wherein the recording medium is a non-volatile memory module.20. The method of claim 17 wherein de receiving of the maximum powervalue comprises receiving the maximum power value by a controllercoupled to control the operation of the recording medium.
 21. The methodof claim 17 wherein: the recording medium comprises a plurality ofmemory blocks; the storage operation is an erase operation; and thecontrolling operation of the recording medium comprises limiting thenumber of the plurality of memory blocks erased during the eraseoperation.
 22. The method of claim 17 further comprising: receiving acommand by the recording medium to perform a storage operation, whereinthe maximum power value corresponds to the command; and wherein thecontrolling of the operation of the recording medium comprises limitingpower consumption during the storage operation corresponding to thecommand.
 23. The method of claim 22 wherein the command comprises anerase command.
 24. The method of claim 22 wherein the command comprisesa write command.
 25. The method of claim 22 wherein the command is afirst command, the storage operation is a first storage operation, andthe maximum power value is a first maximum power value, and furthercomprising: receiving a second command by the recording medium toperform a second storage operation, wherein the second command includesa second maximum power value; and controlling operation of the recordingmedium to limit power consumption by the recording medium to a value nogreater than the second maximum power value during the second storageoperation.
 26. A method for limiting power consumption by a recordingmedium comprising a plurality of memory blocks, comprising: defining avalue corresponding to a quantity of current used by the recordingmedium when performing a storage operation for one of the plurality ofmemory blocks; defining a maximum current limit for operation of therecording medium; determining a maximum number of the plurality ofmemory blocks to operate upon during a single storage operation based on(i) the value corresponding to the quantity of current used by therecording medium for one of the plurality of memory blocks and (ii) themaximum current limit; and limiting operation of the recording medium sothat no more than the maximum number of the plurality of memory blocksis operated upon during the single storage operation.
 27. The method ofclaim 26 wherein the single storage operation at the recording medium islimited by transmitting a maximum current value to the controller. 28.The method of claim 26 wherein the maximum current value is received bya controller in the recording medium, the controller configured tocontrol the operations of the recording medium.
 29. The method of claim28 wherein the maximum current value is accompanied by a set-currentcommand when received by the controller.
 30. The method of claim 28wherein the maximum current value is defined by a processor in acomputing device, wherein the controller is operable to implementstorage operations requested by the processor.
 31. The method of claim30 wherein the processor is coupled to provide commands to thecontroller corresponding to the single storage operation to be performedby the recording medium.
 32. The method of claim 30 further comprisingreceiving at the processor in the computing device a signal indicativeof a status of the maximum current value to be consumed by the recordingmedium, wherein the signal received from the controller.
 33. The methodof claim 26 wherein the maximum current value is accompanied by aset-current command when received by the controller.
 34. The method ofclaim 26 wherein the single storage operation is an erase or a writeoperation.
 35. The method of claim 26 wherein the recording medium isselected from a group consisting of a solid-state PROM memory device, asolid-state flash memory device, a magnetic tape storage system, and ahard disk drive.
 36. The method of claim 26 wherein the maximum currentlimit is 150 mA.